#coding=utf-8
'''
类，对象
把一个变量/属性或方法变为私有的可以在名字前加２个下划线,比如 __do_homework
'''

class Student():
    sum = 0  #类变量/类属性


    def __init__(self,name,age):
        self.name = name
        self.age = age
        #self.__class__.sum += 1
        #print('当前班级学生总数为:' + str(self.__class__.sum))
        #__dict__

    def do_homework(self):
        print('homework')

    @classmethod  #类方法，操作类变量/类属性
    def plus_sum(cls):   #cls也可以使用其他代替，比如self,cls是约定俗成的，就像self
        cls.sum += 1
        print(cls.sum)

    @staticmethod #静态方法，可以通过实例或类调用
    def add(x,y):
        print('This is static method')


student1 = Student('zhangsan',19)
Student.plus_sum() #调用类方法
# student2 = Student('lisi',20)
# Student.plus_sum()
